package com.micro.modual.service;

import com.micro.core.frame.service.BasicsService;
import com.micro.core.resp.RespJson;
import com.micro.modual.entity.Seckill;
import com.micro.modual.model.bo.seckill.SeckillBO;
import com.micro.modual.model.bo.seckill.SeckillStatusBO;

import java.text.ParseException;


/**
*  <h1>秒杀表 接口</h1>
 * @author LevelCoder
 * @version V1.0.0
 * @email LevelCoder@126.com
 * @date 2020-08-04 00:11:10
 */
public interface SeckillService extends BasicsService<Seckill,Long>{

    /**
     * <h2>新增秒杀表详情</h2>
     * @param seckillBO {@link SeckillBO} 秒杀表 新增/修改 请求对象
     * @return {@link RespJson} 返回结果基础类
     */
    RespJson addSeckill(SeckillBO seckillBO);

    /**
     * <h2>修改秒杀表详情</h2>
     * @param seckillBO  {@link SeckillBO} 秒杀表 新增/修改 请求对象
     * @return {@link RespJson} 返回结果基础类
     */
    RespJson editSeckill(SeckillBO seckillBO);

    /**
     * <h2>根据主键编号删除秒杀表信息</h2>
     * @param id  秒杀表 主键编号
     * @return  {@link RespJson} 返回结果基础类
     */
    RespJson deleteSeckill(Long id);

    /**
     * <h2>修改秒杀状态</h2>
     * @param seckillStatusBO
     * @return
     */
    RespJson modifySeckillOnlineStatus(SeckillStatusBO seckillStatusBO) throws ParseException;
}
